package top.zhangjianyong.tools.entity.marirui;

import lombok.Data;
import top.zhangjianyong.tools.exception.MairuiException;
import top.zhangjianyong.tools.utils.DateTimeUtil;

import java.math.BigDecimal;
import java.time.LocalDate;

/**
 * @author ： zhangjianyong
 * @date ： 2022/10/13 4:10 PM
 */
@Data
public class HSCPJDLR {

    private String date;//	截止日期yyyy-MM-dd
    private String income;//	营业收入（万元）
    private String expend;//	营业支出（万元）
    private String profit;//	营业利润（万元）
    private String totalp;//	利润总额（万元）
    private String reprofit;//	净利润（万元）
    private String basege;//	基本每股收益(元/股)
    private String ettege;//	稀释每股收益(元/股)
    private String otherp;//	其他综合收益（万元）
    private String totalcp;//	综合收益总额（万元）

    public BigDecimal basege() {
        return new BigDecimal(this.basege);
    }

    public BigDecimal ettege() {
        try {
            return new BigDecimal(this.ettege);
        } catch (NumberFormatException e) {
            try {

                return new BigDecimal(this.basege);
            }catch (NumberFormatException ex){
                throw new MairuiException(ex.getMessage());
            }

        }

    }


    public int jd() {
        LocalDate d = DateTimeUtil.parseDate(date);
        int value = d.getMonth().getValue();
        switch (value) {
            case 3:
                return 1;
            case 6:
                return 2;
            case 9:
                return 3;
            case 12:
                return 4;
            default:
                throw new RuntimeException("报告期错误:" + value);
        }
    }

    public int year() {
        LocalDate d = DateTimeUtil.parseDate(date);
        return d.getYear();
    }

}
